package com.monad.firemoth.system.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import java.sql.Timestamp;

import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

/**
 * 菜单表
 *
 * @author 单C胞生物
 * @since 2024-04-21 11:57:47
 */
@Data
@TableName("sys_menu")
@Schema(description = "菜单")
public class Menu {

    /**
     * 菜单ID
     */
    @TableId(value = "menu_id", type = IdType.AUTO)
    private Long menuId;

    /**
     * 父菜单ID
     */
    @TableField("parent_id")
    private Long parentId;

    /**
     * 菜单名称
     */
    @TableField("menu_name")
    private String menuName;

    /**
     * 菜单类型(0目录 1菜单 2按钮)
     */
    @TableField("menu_type")
    private Byte menuType;

    /**
     * 菜单路径
     */
    @TableField("path")
    private String path;

    /**
     * 组件名
     */
    @TableField("component")
    private String component;

    /**
     * 图标
     */
    @TableField("icon")
    private String icon;

    /**
     * 菜单顺序
     */
    @TableField("sort")
    private Byte sort;

    /**
     * 是否显示(0显示 1隐藏)
     */
    @TableField("is_show")
    private Byte isShow;

    /**
     * 是否缓存(0缓存 1不缓存)
     */
    @TableField("is_cache")
    private Byte isCache;

    /**
     * 是否启用(0启用 1停用)
     */
    @TableField("enabled")
    private Byte enabled;

    /**
     * 菜单说明
     */
    @TableField("remark")
    private String remark;

    /**
     * 创建者
     */
    @TableField("create_by")
    private String createBy;

    /**
     * 更新者
     */
    @TableField("update_by")
    private String updateBy;

    /**
     * 创建时间
     */
    @TableField("create_time")
    private Timestamp createTime;

    /**
     * 更新时间
     */
    @TableField("update_time")
    private Timestamp updateTime;

    /**
     * 删除状态(0未删除 1已删除)
     */
    @TableField("delete_flag")
    private Byte deleteFlag;
}
